#ifndef __OBSERVER_H
#define __OBSERVER_H

#include "ObservedObject.hpp"

template <class T>
class ObservedObject;

template <class T>
class Observer
{
protected:
    ObservedObject<T> *observedObject;

public:
    Observer(ObservedObject<T> *);
    virtual void notify() = 0;
};

#endif
